#include <iostream>
using namespace std;
template <typename T>
const T&min1(const T& a,const T& b){
	return a<b?a:b;
}
class stone {
public:
	stone(int we):_weight(we){}
	bool operator<(const stone& r2)const{
		return _weight < r2._weight;
	}
private:
	int _weight;
};
int main(){
	stone r1(3);
	stone r2(4);
	min1(r1,r2);                                   
	return 0;
}
